package com.letv.business.flow.album.listener;

import com.letv.adlib.managers.status.video.IVideoStatusInformer;

/**
 * 广告fragment对外提供的接口
 * 
 * @author zhuqiao
 *
 */
public interface PlayAdFragmentListener {

    void pause();

    void setPauseAd(boolean pause);

    void setADPause(boolean pause);

    void stopPlayback(boolean notifyOnFinish);

    boolean isPlaying();

    void closePauseAd();

    void onResume();

    /**
     * 新增IVideoStatusInformer ，用于客户端将播放状态通知给广告
     *
     * @return
     */
    IVideoStatusInformer getIVideoStatusInformer();

    void setIVideoStatusInformer(IVideoStatusInformer format);

    void cancelRequestFrontAdTask();

    /**
     * 得到离线的前帖广告
     * 
     * @param cid 频道id
     * @param aid 专辑id
     * @param vid 视频id
     * @param mmsid 媒资id
     * @param uuid 唯一播放id
     * @param uid 用户id
     * @param vlen 视频时长
     * @param py ""
     * @param ty 0
     * @param isVipVideo 是否是试看片 false
     * @param disableAvd 是否禁播avd false
     * @param toShowLoading 是否显示loading false
     * @param isOfflineAds 是否是离线广告 true
     */
    void getOfflineFrontAd(int cid, long aid, long vid, String mmsid, String uuid, String uid,
                           String vlen, String py, String ty, boolean isVipVideo,
                           boolean disableAvd, boolean toShowLoading, boolean isOfflineAds);

    /**
     * 得到前帖广告
     */
    void getDemandFrontAd(int cid, long aid, long vid, String mmsid, String uuid, String uid,
                          String vlen, String py, String ty, boolean isSupportM3U8,
                          boolean isVipVideo, boolean disableAvd, boolean toShowLoading,
                          boolean isWoOrderUser, boolean isOpenCde);

    /**
     * 获取前贴暂停广告
     * 
     * @param cid
     * @param aid
     * @param vid
     * @param mmsid
     * @param uuid
     * @param uid
     * @param vlen
     * @param py
     * @param ty
     */
    void getDemandPauseAd(int cid, long aid, long vid, String mmsid, String uuid, String uid,
                          String vlen, String py, String ty);

}
